덜 지루한 기술
- 2025-03-11 (modified: 2025-07-22)
- 저자: AK
“지루한 기술(boring technology)“이란 Dan McKinley의 2015년 글 “Choose Boring Technology”에서 나온 말이다. 난 “덜 지루한 기술”이 좋다.
”Choosing Boring Technology” 요약
Boring tech란? 오래되고 지루하다고 다 유용한 것은 아님. 저자가 말하는 “지루한 기술”이란 “오래되고 쓸만한 기술”을 말함.
What counts as boring? That’s a little tricky. “Boring” should not be conflated with “bad.” There is technology out there that is both boring and bad. You should not use any of that. But there are many choices of technology that are boring and good, or at least good enough. MySQL is boring. Postgres is boring. PHP is boring. Python is boring. Memcached is boring. Squid is boring. Cron is boring.
왜 지루한 기술을 선택하는 게 좋은가?
The nice thing about boringness (so constrained) is that the capabilities of these things are well understood. But more importantly, their failure modes are well understood.
한편, 이미 회사가 채택한 기술이 무엇인지도 중요한 고려 사항. 이미 채택하여 쓰고 있는 기술 내에서 최대한 문제를 해결하려는 노력이 중요.
Adding technology to your company comes with a cost…. If we’re already using Ruby, adding Python to the mix doesn’t feel sensible because the resulting complexity would outweigh Python’s marginal utility.
때로는 새 기술을 도입해야 한다. 하지만 새 기술의 도입 여부는 언제나 보수적인 기준에 의해서 결정해야.
Taking this reasoning to its reductio ad absurdum would mean picking Java, and then trying to implement a website without using anything else at all. And that would be crazy. You need some means to add things to your toolbox.
”지루함”은 기술과 사람 사이의 관계에 있는 속성
여기서부터는 내 생각.
“지루함” 여부는 기술 자체의 속성이 아니다. 기술이 익숙하고 안정적인지 여부는 기술 자체에 있기보다는 기술과 사람(또는 조직)의 관계에 있는 속성으로 보면 좀 더 유익하다(어포던스와 유사). 이런 관점에서 보면, 단지 어떤 기술이 “지루하지 않다”는 이유로 그 기술을 안쓰면 그로 인해 더 안쓰게 되는 자기실현적 예언의 성격도 띈다는 점도 중요하다.
생산성 향상과 역량 향상
생산성 향상과 역량 향상 사이의 딜레마(Exploration-exploitation dilemma)라는 관점에서 볼 때, Dan McKinley의 글은 주로 생산성(그리고 안정성)에 초점을 두고 있다. “혁신 포인트” 3점을 주는 점, 글의 후반부에서 때로는 새 기술을 도입해야 한다고 말하는 점 등을 보면 탐험(또는 역량 향상)의 중요성을 살짝 언급하기는 하지만 글의 초점은 아니다.
난 두 관점을 상황에 따라 적절히 고려하는 게 중요하다고 본다. 당장의 생산성 또는 안정성이 중요하면 익숙하고 안정적인 기술(지루한 기술), 위험 감수가 가능한 상황이라면 공부를 위해 신기술을 일부러 더 써보는 편이다. 원글에서도 “혁신 포인트”를 3점 주고 시작한다는 점을 염두에 두자.
중요한 건 상황에 따라 탐험과 활용의 비중을 적절히 조절하는 것(MAB 알고리즘)이다.
- “지루한 기술”을 지나치게 강조하는 관점은 조직과 개인의 역량 향상을 방해할 수 있고, “신기술”을 지나치게 강조하는 관점은 생산성과 안정성에 해로울 수 있다.
- 실제 비즈니스 가치를 만들어내는 제품/서비스가 없어도 역량 향상이 제한되고, 제품 만들기(생산성과 안정성)에만 지나치게 몰입해도 역량 향상이 제한된다.
의도적으로 “탐색”을 위해 힘쓰기
그럼에도 불구하고 나는 탐색에 좀 더 편향되기 위해 노력한다. 그 이유는 이렇다.
- 경로의존성: 탐험의 비중이 줄어들고 활용을 많이 하기 시작하면 습관처럼 점점 더 그 방향으로의 의존성이 생기며 돌이키기가 쉽지 않다.
- 성실성의 증가: 성격심리학 연구에 따르면 사람은 나이가 들면서 성실성(Big-5 conscientiousness)이 서서히 높아지는 경향이 있다고 한다. 즉, 탐험을 덜 하려는 경향이 자연스럽게 증가한다.
- 기대 수명의 증가: 인간의 기대 수명은 꾸준히 증가하고 있다. 운이 좋으면 건강 수명도 증가할 수 있다. 즉, 생각보다 남은 시도 횟수가 더 많을 수 있다.
더 자세한 이야기는 활용보다 탐험 참고.
아직 젊거나 경험이 적다면
아직 젊거나 이 분야(?)에 들어온지 얼마 안됐다면? 더더욱 탐색의 비중을 높이는 게 중요하다. 다양한 사이드 프로젝트를 경험하고, 일부러 안써봤던 기술을 써보고(하지만 효율적인 학습이 일어나려면 한 번에 너무 많은 걸 바꾸지는 않아야), 다양한 사람을 만나보고, 여러 비즈니스 도메인을 접해보는 게 좋다고 생각한다.
물론 기술이 유일한 “탐색”의 축은 아니다. 유의미한 비즈니스 성과를 내고 있는 서비스/제품을 만들고 운영하는 경험도 “탐색”의 한 축이므로 “생산성과 안정성”도 “기술적 탐험과 실험”만큼이나 중요하다. 그러므로 적당한 수준의 “덜 지루한” 기술이 좋은 것 같다.